package com.leoman.user.service;

import com.leoman.common.service.GenericManager;
import com.leoman.user.entity.UserInfo;
import org.springframework.data.domain.Page;
import org.springframework.web.multipart.MultipartRequest;

import java.io.IOException;
import java.util.List;

/**
 * Created by 蔡琦 on 2016/6/14 0014.
 *
 */
public interface UserService extends GenericManager<UserInfo> {

    // 普通会员列表（翻页）
    Page<UserInfo> page(String mobile, String nickname, Integer gender, Integer status, Integer type, String startDate,
                               String endDate,Integer isCreator, Integer sort, Integer pageNum, Integer pageSize);

    // 根据查询主创用户
    List<UserInfo> findByStatus();

    // 根据昵称查询对应用户
    UserInfo findOneByNickname(String nickname);

    // 查询新增会员列表
    List<UserInfo> findListNew();

    // 设置主创用户
    Integer setCreator(Long userId, Integer status);

    // 保存用户
    Integer saveUser(String mobile,
                            String nickname,
                            String password,
                            Integer gender,
                            MultipartRequest multipartRequest) throws IOException;

    // 查询主创和后台添加用户列表
    List<UserInfo> findList();

    // 根据状态查询用户列表
    List<UserInfo> findByIsCreator(Integer isCreator);
}
